Skip to content

feat(ui): make federated dev server ports configurable#2563

Merged
google-oss-prow[bot] merged 2 commits intokubeflow:mainfrom
mturley:feat/configurable-federated-ports
Apr 29, 2026
Merged

feat(ui): make federated dev server ports configurable#2563
google-oss-prow[bot] merged 2 commits intokubeflow:mainfrom
mturley:feat/configurable-federated-ports

Conversation

@mturley
Copy link
Copy Markdown
Contributor

@mturley mturley commented Apr 9, 2026

Description

  • Add FEDERATED_FRONTEND_PORT and FEDERATED_BFF_PORT Make variables with conditional assignment (?=) to clients/ui/Makefile
  • Defaults remain unchanged (9100 for frontend, 4000 for BFF)
  • Pass PROXY_PORT=$(FEDERATED_BFF_PORT) to the frontend dev server so the webpack proxy connects to the correct BFF port when overridden
  • Allows overriding ports via environment variables, enabling multiple federated dev environments to run simultaneously on different ports

Motivation: When working with multiple git worktrees (e.g. working with agents on multiple branches or reviewing/testing multiple PRs), each worktree needs its own set of dev servers. Currently the federated dev targets hardcode PORT=9100 and PORT=4000, so only one instance can run at a time. This change makes the ports configurable while preserving the existing defaults.

How Has This Been Tested?

  • Run make dev-start-federated with no env vars — should behave identically to before (ports 9100 and 4000)
  • Run FEDERATED_FRONTEND_PORT=9200 FEDERATED_BFF_PORT=4100 make dev-start-federated — should start on the overridden ports and the frontend proxy should connect to port 4100

Merge criteria:

  • All the commits have been signed-off (To pass the DCO check)
  • The commits have meaningful messages
  • Automated tests are provided as part of the PR for major new functionalities; testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work.
  • Code changes follow the kubeflow contribution guidelines.
  • For first time contributors: Please reach out to the Reviewers to ensure all tests are being run, ensuring the label ok-to-test has been added to the PR.

If you have UI changes

  • The developer has added tests or explained why testing cannot be added.
  • Included any necessary screenshots or gifs if it was a UI change.
  • Verify that UI/UX changes conform the UX guidelines for Kubeflow.

🤖 Generated with Claude Code

@manaswinidas
Copy link
Copy Markdown
Contributor

/retest

@Philip-Carneiro
Copy link
Copy Markdown
Contributor

/lgtm

@google-oss-prow
Copy link
Copy Markdown
Contributor

@Philip-Carneiro: changing LGTM is restricted to collaborators

Details

In response to this:

/lgtm

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Comment thread clients/ui/Makefile Outdated
.PHONY: dev-frontend-federated
dev-frontend-federated:
cd frontend && AUTH_METHOD=user_token DEPLOYMENT_MODE=federated STYLE_THEME=patternfly PORT=9100 npm run start:dev
cd frontend && AUTH_METHOD=user_token DEPLOYMENT_MODE=federated STYLE_THEME=patternfly PORT=$(FEDERATED_FRONTEND_PORT) npm run start:dev
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a thought, now that we can customise the FEDERATED_BFF_PORT - the proxy port is still defaults to 4000 port.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch, thanks! Fixed.

mturley and others added 2 commits April 28, 2026 14:54
Add FEDERATED_FRONTEND_PORT and FEDERATED_BFF_PORT Make variables with
conditional assignment (?=) so they can be overridden via environment
variables. This allows running multiple federated dev environments
simultaneously on different ports.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Mike Turley <mike.turley@alum.cs.umass.edu>
Ensures the webpack dev server proxy connects to the correct BFF port
when FEDERATED_BFF_PORT is overridden.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Mike Turley <mike.turley@alum.cs.umass.edu>
@mturley mturley force-pushed the feat/configurable-federated-ports branch from af45fb6 to 5ab2aab Compare April 28, 2026 18:58
Copy link
Copy Markdown
Contributor

@ppadti ppadti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm
/approve

@google-oss-prow
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ppadti

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-prow google-oss-prow Bot merged commit c37665d into kubeflow:main Apr 29, 2026
27 of 28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants